The Design of a Multithreaded Programming Course and Its Accompanying Software Tools
نویسنده
چکیده
With the continuing emergence of multithreaded computation as a powerful vehicle for science and engineering, the need for an introduction to multithreaded programming for scientists and engineers is high. All popular operating systems already support multithreaded programming and the popular POSIX Pthreads standard has been approved. It is the right time to teach students this new technology. This paper presents the problems and difficulties we encountered and a set of comprehensive and flexible course materials for a multithreaded programming course for sophomore and junior students. This paper also presents the design of pedagogical tools for the students to visualize and experiment with various concepts in multithreaded programming. These concepts include program behavior and execution visualization, deadlock and race condition detection, and software metrics for measuring the complexity of students’ programs.
منابع مشابه
The Design and Construction of a User - Level Kernel forTeaching Multithreaded
| Multithreading is a powerful programming paradigm that has become very popular in recent years. The authors have developed a set of course materials and software tools for eeectively teaching multithreaded programming (MTP). One important component of the au-thors' system is a very simple user-level kernel for instructors to teach MTP without getting into system details , and for the students...
متن کاملMultithreaded Programming Can Strengthen an Operating Systems Course
Today, virtually all operating systems support multithreaded programming. In fact, threads are easier to use and more efficient than processes. This paper presents a possible way of using multithreaded programming to strengthen an operating systems course. More precisely, the lecture hours are divided into a theory track and a programming track. The former concentrates on the traditional topics...
متن کاملMetadata Enrichment for Automatic Data Entry Based on Relational Data Models
The idea of automatic generation of data entry forms based on data relational models is a common and known idea that has been discussed day by day more than before according to the popularity of agile methods in software development accompanying development of programming tools. One of the requirements of the automation methods, whether in commercial products or the relevant research projects, ...
متن کاملThe Design and Construction of a User - Level Kernel
| Multithreading is a powerful programming paradigm that has become very popular in recent years. The authors have developed a set of course materials and software tools for eeectively teaching multithreaded programming (MTP). One important component of the au-thors' system is a very simple user-level kernel for instructors to teach MTP without getting into system details , and for the students...
متن کاملDesigning Modularity Architecture for Multithread Programming
Multithreaded Object-Oriented Programming in concurrency environment using object-oriented technology is a complex activity. Programmers need to be aware of issues unrelated to their domain of problem, and are often unprepared for the challenges of the concurrent object-oriented programming brings. The interaction of their components becomes more complex, and makes it difficult to validate the ...
متن کامل